package com.lzy.elasticserch.config;


import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.boot.context.properties.ConfigurationProperties;

import java.util.List;

@Data
@ToString
@EqualsAndHashCode
@ConfigurationProperties(prefix = "cn.lzy.index")
public class IndexMappingProperty {
    /**
     * 配置集合
     */
    private List<Mapping> mappings;

    @Data
    @ToString
    @EqualsAndHashCode
    static class Mapping {
        /**
         * 数据库 schema
         */
        private String schemaName;
        /**
         * 数据库表名称
         */
        private String tableName;
        /**
         * 索引名称
         */
        private String index;
        /**
         * 索引别名(数据交换、迁移使用)
         */
        private String indexAlias;
        /**
         * 索引别名（读取操作使用）
         */
        private String readIndexAlias;
        /**
         * 索引别名（写入操作使用）
         */
        private String writeIndexAlias;
    }
}
